#include "config.h"
+#include <gio/gio.h>
+
#include "gdk/gdkkeysyms.h"
#include "gtkbookmarksmanager.h"
+#include "gtkcelllayout.h"
+#include "gtkcellrenderertext.h"
+#include "gtkcellrendererpixbuf.h"
+#include "gtkicontheme.h"
+#include "gtkimagemenuitem.h"
+#include "gtkintl.h"
+#include "gtkmain.h"
#include "gtkmarshalers.h"
+#include "gtkmenuitem.h"
+#include "gtkmountoperation.h"
#include "gtkplacessidebar.h"
#include "gtkscrolledwindow.h"
-#include "gtktreeview.h"
-#include <gio/gio.h>
+#include "gtkseparatormenuitem.h"
+#include "gtktreeselection.h"
+#include "gtktreednd.h"
+#include "gtkwindow.h"
#define EJECT_BUTTON_XPAD 6
#define ICON_CELL_XPAD 6
#define ICON_NAME_FOLDER_VIDEOS "folder-videos"
#define ICON_NAME_FOLDER_SAVED_SEARCH "folder-saved-search"
-static guint placess_sidebar_signals [LAST_SIGNAL] = { 0 };
+static guint places_sidebar_signals [LAST_SIGNAL] = { 0 };
static void open_selected_bookmark (GtkPlacesSidebar *sidebar,
GtkTreeModel *model,
NULL,
NULL);
- gtk_style_context_restore (context);
+ gtk_style_context_restore (style);
g_object_unref (icon);
gtk_icon_info_free (icon_info);
GVolume *volume;
GSList *bookmarks, *sl;
int index;
- char *mount_uri, *name, *desktop_path, *last_uri;
+ const char *desktop_path;
+ char *mount_uri, *name, *last_uri;
char *bookmark_name;
const gchar *path;
GIcon *icon;
bookmarks = _gtk_bookmarks_manager_list_bookmarks (sidebar->bookmarks_manager);
- for (sl = bookmarks; sl; sl = sl->next) {
+ for (sl = bookmarks, index = 0; sl; sl = sl->next, index++) {
root = sl->data;
#if 0
nautilus_file_unref (file);
#endif
- bookmark_name = _gtk_bookmarks_manager_get_bookmark_label (root);
+ bookmark_name = _gtk_bookmarks_manager_get_bookmark_label (sidebar->bookmarks_manager, root);
mount_uri = g_file_get_uri (root);
tooltip = g_file_get_parse_name (root);
icon = NULL; /* FIXME: icon = nautilus_bookmark_get_icon (bookmark); */
static GList*
build_selection_list (const char *data)
{
+#if DO_NOT_COMPILE
NautilusDragSelectionItem *item;
+#endif
GList *result;
char **uris;
char *uri;
GAsyncResult *res,
gpointer user_data)
{
+ GtkPlacesSidebar *sidebar;
GError *error;
char *primary;
char *name;
+ sidebar = GTK_PLACES_SIDEBAR (user_data);
+
error = NULL;
if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
if (error->code != G_IO_ERROR_FAILED_HANDLED) {
gtk_tree_model_get (model, iter, PLACES_SIDEBAR_COLUMN_URI, &uri, -1);
if (uri != NULL) {
- DEBUG ("Activating bookmark %s", uri);
-
location = g_file_new_for_uri (uri);
emit_location_selected (sidebar, location, open_mode);
GMountOperation *mount_op;
mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
- g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_from_bookmark_cb, NULL);
+ g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_from_bookmark_cb, sidebar);
g_object_unref (mount_op);
}
static void
add_bookmark (GtkPlacesSidebar *sidebar)
{
+#if DO_NOT_COMPILE
GtkTreeModel *model;
GtkTreeIter iter;
char *uri;
g_object_unref (bookmark);
g_free (uri);
}
+#endif
}
static void
static void
remove_selected_bookmarks (GtkPlacesSidebar *sidebar)
{
+#if DO_NOT_COMPILE
GtkTreeIter iter;
PlaceType type;
int index;
-1);
nautilus_bookmark_list_delete_item_at (sidebar->bookmarks, index);
+#endif
}
static void
sidebar = user_data;
emit_initiated_unmount (sidebar, FALSE);
- g_object_unref (sidebar);
error = NULL;
if (!g_drive_eject_with_operation_finish (G_DRIVE (source_object), res, &error)) {
}
g_error_free (error);
}
+
+ g_object_unref (sidebar);
}
static void
sidebar = user_data;
emit_initiated_unmount (sidebar, FALSE);
- g_object_unref (sidebar);
error = NULL;
if (!g_volume_eject_with_operation_finish (G_VOLUME (source_object), res, &error)) {
}
g_error_free (error);
}
+
+ g_object_unref (sidebar);
}
static void
sidebar = user_data;
emit_initiated_unmount (sidebar, FALSE);
- g_object_unref (sidebar);
error = NULL;
if (!g_mount_eject_with_operation_finish (G_MOUNT (source_object), res, &error)) {
}
g_error_free (error);
}
+
+ g_object_unref (sidebar);
}
static void
GAsyncResult *res,
gpointer user_data)
{
+ GtkPlacesSidebar *sidebar;
GError *error;
char *primary;
char *name;
+ sidebar = GTK_PLACES_SIDEBAR (user_data);
+
error = NULL;
if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
if (error->code != G_IO_ERROR_FAILED_HANDLED) {
}
g_error_free (error);
}
+
+ /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it. Do we need to do the same here? */
}
static void
-1);
if (drive != NULL) {
- g_drive_poll_for_media (drive, NULL, drive_poll_for_media_cb, NULL);
+ g_drive_poll_for_media (drive, NULL, drive_poll_for_media_cb, sidebar);
}
g_object_unref (drive);
}
GAsyncResult *res,
gpointer user_data)
{
+ GtkPlacesSidebar *sidebar;
GError *error;
char *primary;
char *name;
+ sidebar = GTK_PLACES_SIDEBAR (user_data);
+
error = NULL;
if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
if (error->code != G_IO_ERROR_FAILED_HANDLED) {
}
g_error_free (error);
}
+
+ /* FIXME: drive_stop_cb() gets a reffed sidebar, and unrefs it. Do we need to do the same here? */
}
static void
mount_op = gtk_mount_operation_new (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (sidebar))));
- g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_cb, NULL);
+ g_drive_start (drive, G_DRIVE_START_NONE, mount_op, NULL, drive_start_cb, sidebar);
g_object_unref (mount_op);
}
sidebar = user_data;
emit_initiated_unmount (sidebar, FALSE);
- g_object_unref (sidebar);
error = NULL;
if (!g_drive_poll_for_media_finish (G_DRIVE (source_object), res, &error)) {
}
g_error_free (error);
}
+
+ g_object_unref (sidebar);
}
static void
G_CALLBACK (open_shortcut_in_new_tab_cb), sidebar);
gtk_menu_shell_append (GTK_MENU_SHELL (sidebar->popup_menu), item);
- if (settings->multiple_tabs_supported) {
+ if (sidebar->multiple_tabs_supported) {
gtk_widget_show (item);
}
NULL, /* popup_position_func */
NULL, /* popup_position_user_data */
button, /* button */
- event ? event->time : gtk_get_currrent_event_time ()); /* activate_time */
+ event ? event->time : gtk_get_current_event_time ()); /* activate_time */
- gtk_object_sink (GTK_OBJECT (menu));
+ g_object_ref_sink (sidebar->popup_menu); /* FIXME: is this right? It was gtk_object_sink() */
}
/* Callback used for the GtkWidget::popup-menu signal of the shortcuts list */
gchar *new_text,
GtkPlacesSidebar *sidebar)
{
+#if DO_NOT_COMPILE
GtkTreePath *path;
GtkTreeIter iter;
NautilusBookmark *bookmark;
if (bookmark != NULL) {
nautilus_bookmark_set_custom_name (bookmark, new_text);
}
+#endif
}
static void
static void
bookmarks_changed_cb (gpointer data)
{
+ GtkPlacesSidebar *sidebar = GTK_PLACES_SIDEBAR (data);
+
update_places (sidebar);
}
sidebar = GTK_PLACES_SIDEBAR (object);
- sidebar->window = NULL;
sidebar->tree_view = NULL;
g_free (sidebar->uri);
g_clear_object (&sidebar->store);
g_clear_object (&sidebar->volume_monitor);
- g_clear_object (&sidebar->bookmarks);
g_clear_object (&sidebar->filter_model);
G_OBJECT_CLASS (gtk_places_sidebar_parent_class)->dispose (object);
{
GObjectClass *gobject_class;
- gobject_class = (GObjectClass *) places_sidebar_class;
+ gobject_class = (GObjectClass *) class;
gobject_class->dispose = gtk_places_sidebar_dispose;
G_SIGNAL_RUN_FIRST,
G_STRUCT_OFFSET (GtkPlacesSidebarClass, initiated_unmount),
NULL, NULL,
- gtk_marshal_VOID__BOOLEAN,
+ _gtk_marshal_VOID__BOOLEAN,
G_TYPE_NONE, 1,
G_TYPE_BOOLEAN);
g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
sidebar->multiple_tabs_supported = !!supported;
- bookmarks_popup_menu_detach_cb (sidebar, NULL);
+ bookmarks_popup_menu_detach_cb (GTK_WIDGET (sidebar), NULL);
}
/**
g_return_if_fail (GTK_IS_PLACES_SIDEBAR (sidebar));
sidebar->multiple_windows_supported = !!supported;
- bookmarks_popup_menu_detach_cb (sidebar, NULL);
+ bookmarks_popup_menu_detach_cb (GTK_WIDGET (sidebar), NULL);
}
/**